package org.example;
//这里引入依赖和jar包都可以
import com.mysql.cj.jdbc.MysqlDataSource;

import javax.sql.DataSource;
import javax.swing.plaf.synth.SynthTextAreaUI;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class demo1 {
	public static void main1(String[] args) throws SQLException {
		//创建数据源
		DataSource dataSource=new MysqlDataSource();
		//配置参数
		((MysqlDataSource) dataSource).setURL("jdbc:mysql://localhost:3306/java109?characterEncoding=utf8&useSSL=false");
		((MysqlDataSource) dataSource).setUser("root");
		((MysqlDataSource) dataSource).setPassword("maihao1122");

		Connection connection=dataSource.getConnection();
		//2.编写sql，并进行预处理sql语句，因为mysql是一个客户端-服务端的软件，如果都交给mysql处理，效率不高
		String sql="insert into emp values(?,?)";
		PreparedStatement statement= connection.prepareStatement(sql);
		statement.setInt(1,100);
		statement.setString(2,"张三");
		//进行更新数据
		statement.executeUpdate();
		//关闭资源
		statement.close();
		connection.close();

	}

	public static void main(String[] args) throws SQLException {
		//查询数据
		DataSource dataSource=new MysqlDataSource();
		//配置参数
		((MysqlDataSource) dataSource).setURL("jdbc:mysql://localhost:3306/java109?characterEncoding=utf8&useSSL=false");
		((MysqlDataSource) dataSource).setUser("root");
		((MysqlDataSource) dataSource).setPassword("maihao1122");

		Connection connection=dataSource.getConnection();
		//2.编写sql，并进行预处理sql语句，因为mysql是一个客户端-服务端的软件，如果都交给mysql处理，效率不高
		String sql="select id,name from emp where id=?";
		PreparedStatement statement= connection.prepareStatement(sql);
		//这样查询的话，还有可能跟反射放在一起进行考察
		statement.setInt(1,100);
		ResultSet resultSet = statement.executeQuery();
		while(resultSet.next()) {
			Integer id=resultSet.getInt("id");
			String name=resultSet.getString("name");
			System.out.println("id:"+id+" "+"name:"+name);
		}
	}
}
